package com.jn.erp.web.api.course.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.jn.erp.web.api.course.entity.TCourseOrder;
import com.jn.erp.web.api.course.entity.dto.StudentOrderListExcal2CDto;
import com.jn.erp.web.api.course.entity.dto.StudentOrderListExcal2SDto;
import com.jn.erp.web.api.course.entity.dto.StudentOrderListExcalDto;
import com.jn.erp.web.api.course.entity.dto.TCourseOrderDto;
import com.jn.erp.web.api.course.entity.vo.TCourseOrderConfigVo;
import com.jn.erp.web.api.course.entity.vo.TCourseOrderVo;
import org.apache.ibatis.annotations.Param;

import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author wyp
 * @since 2024-09-04
 */
public interface TCourseOrderService extends IService<TCourseOrder> {

    TCourseOrder lastCourseOrder(LocalDateTime startTime, Long cofId,Long studentId);

    List<TCourseOrderDto> courseOrderList(TCourseOrderVo tCourseOrderVo);

    List<StudentOrderListExcalDto> exportOrderList(TCourseOrderVo tCourseOrderVo);

    TCourseOrderDto getCourseOrderById(TCourseOrderVo tCourseOrderVo);

    List<TCourseOrderDto> orderStudentList(TCourseOrderVo tCourseOrderVo);

    List<TCourseOrderDto> orderListSecond(TCourseOrderVo tCourseOrderVo);

    String addStudent(TCourseOrderVo tCourseOrderVo);

    List<StudentOrderListExcal2CDto> exportOrderListSecondC(TCourseOrderVo tCourseOrderVo);

    List<StudentOrderListExcal2SDto> exportOrderListSecondS(TCourseOrderVo tCourseOrderVo);

   String updateBatchOrder( List<TCourseOrder> tCourseOrders);

    String updateOrderById(TCourseOrder tCourseOrder);

    String saveRepair(TCourseOrderConfigVo tCourseOrderConfigVo);

    List<TCourseOrderDto> repairDetail(TCourseOrderVo tCourseOrderVo);

    List<TCourseOrderDto> orderListThird(TCourseOrderVo tCourseOrderVo);

    TCourseOrderDto orderDetailSecond(TCourseOrderVo tCourseOrderVo);

    Map orderCountSecond(TCourseOrderVo tCourseOrderVo);

    int called(String orderNo);

    List<TCourseOrderDto> orderFilterList(TCourseOrderVo tCourseOrderVo);

    String getMaxOrderNo( String date);

}
